草庐IT

unit-testing - Golang 模拟 Elastic

全部标签

go - 带和不带空白标识符的 Golang 计时

我正在玩围棋的一些基本计时,有一个问题。我想在Golang计算数组的每个元素的平方根时计算时间,但无论是否保留输出,我都会得到两个不同的答案。这是我的第一个版本:packagemainimport("fmt""time""math""math/rand")//ArandomarrayofintegersfuncrandomArray(maxint,lenint)[]int{a:=make([]int,len)fori:=0;i平均耗时约36毫秒:timetaken:36.542019ms9现在,当我用空白标识符替换输出“sqrt”时,我得到的速度要慢得多。具体来说,我将main()替换

Golang GUI fyne-io 帮忙设置?

我只是无法配置GUIfyne-io.gogetfyne.io/fyne出错了packagefyne.io/fyne:unrecognizedimportpath"fyne.io/fyne"(httpsfetch:Gethttps://fyne.io/fyne?go-get=1:dialtcp:lookupfyne.io:nosuchhost)JetBrains的IDE从导入安装它很好导入(“fyne.io/fyne/widget”“fyne.io/fyne/app”)然后在gorun出现错误exec:“gcc”:executablefilenotfoundin%PATH%安装TDM-G

go - 将字符串响应转换为 golang 中的映射

我正在使用https://godoc.org/github.com/andygrunwald/go-jira#IssueService.GetCustomFields来获取自定义字段,并且我正在尝试使用一些数据。funcgetsomedata(issue_idstring){issue,_,_:=jiraClient.Issue.Get(issue_id,nil)fields,_,_:=jiraClient.Issue.GetCustomFields(issue_id)data:=fields["customfield_123456"]}类似于以下(未格式化)的内容作为单个字符串返回,

string - 从golang中的字节数组解压gzip

我有一堆来自一些网络请求的文件,有些是gzip压缩的,我需要解压缩它们并将它们打印为字符串。这是我第一次尝试使用golang,我尝试了一些在网上找到的示例,但无法正常运行。这是我尝试的最后一个测试:packagemainimport("bytes""compress/gzip""fmt""io/ioutil")funcmain(){content:=[]byte{72,84,84,80,47,49,46,49,32,50,48,48,32,79,75,13,10,84,114,97,110,115,102,101,114,45,69,110,99,111,100,105,110,103

unit-testing - 在 Go 单元测试中使用两个不同的模拟

我正在学习使用gomock的mockgen实用程序第一次在Go中使用mock进行单元测试。我的单元测试工作正常,除了其中一个。被测方法有两个依赖项:一个依赖于数据库,另一个依赖于它调用restapi的外部服务。数据库的模拟(mockRepo)工作正常,因为被测方法正确调用模拟而不是实际的repo代码。然而,rest客户端的mock继续调用实际的rest客户端而不是mock代码。我不知道为什么。有人可以解释原因并帮助修复吗?这是我的单元测试:funcTestService_CreateWorkspace(t*testing.T){ts:=NewTestService(t)deferts.

golang url.PathUnescape 无法在 %% 中工作

我使用golangurl.PathUnescape函数对url进行转义,但它不能在%%中工作。我收到一个请求,它的url是/search/?ptp=1&q=%27%22&%%3cacx%3e%3cscript%20%3emcyv9834%3c/script%3e&t=bao。当我使用golangurl.PathUnescape函数取消转义url时,出现错误是无效的URL转义“%%3”。为什么?packagemainimport("net/url""fmt")funcmain(){str:=`/search/?ptp=1&q=%27%22&%%3Cacx%3E%3CScRiPt%20%3

go - 如何关闭使用 golang lib excelize 打开的工作表?

我按照repo(https://github.com/360EntSecGroup-Skylar/excelize)教程打开了一个文件:f,err:=excelize.OpenFile("./Book1.xlsx")iferr!=nil{fmt.Println(err)return}entercodehere但是我找不到关于关闭的教程,比如:deferf.Close()有办法吗? 最佳答案 您不必关闭它。只需打开它,并在需要时保存它。myFile,错误:=excelize.OpenFile("./Book1.xlsx")如果错误!=

go - 如何将函数应用于 Golang 中的整数输入

例如,如果输入是这个1345全部由空格分隔,我想应用对每个数字进行平方然后相加的功能。我只是不知道如何将函数应用于每个数字。我所能想到的是,我必须将数字放入一个slice中,然后将该函数应用于每个数字。我到处都看过,但找不到如何执行此操作。在Python中,我只是这样做,并且我已经将值放入名为“n”的列表中。#Thelistispastedfromtheinitialpuzzlen=[10,10,9,8,10,10,10]#Thelistisfirstsquaredb=(list(map(lambdax:x**2,n)))b成为对每个数字执行函数的新列表。

go - 使用 golang 生成嵌套的 JSON

那么我在这里做错了什么,我并没有真正理解如何生成嵌套的JSON结构:我收到“复合文字中缺少类型”异常。https://play.golang.org/p/pA1fpbQHbb0packagemainimport"fmt"typeFamilyRequestBodystruct{Familystring`json:"family"`}typeDataRequestBodystruct{FamilyFamilyRequestBody`json:"family"`}typeEventRequestBodystruct{Accountstring`json:"account"`Playerstr

json - 如何从 Golang 中的 json 中提取单个值?

我的代码funcHostStats()(*host.InfoStat,error){infoStat,err:=host.Info()fmt.Printf("AllHostinfo:",infoStat)returninfoStat,err}输出所有主机信息:%!(EXTRAstring={"hostname":"UDAY-PC","uptime":536323,"bootTime":1559911444,"procs":248,"os":"windows","platform":"MicrosoftWindows10Pro","platformFamily":"独立工作站","pla